(0) Obligation:

Runtime Complexity TRS:
The TRS R consists of the following rules:

p(a(a(x0)), p(x1, p(a(x2), x3))) → p(x2, p(a(a(b(x1))), p(a(a(x0)), x3)))

Rewrite Strategy: INNERMOST

(1) CpxTrsToCdtProof (BOTH BOUNDS(ID, ID) transformation)

Converted CpxTRS to CDT

(2) Obligation:

Complexity Dependency Tuples Problem
Rules:

p(a(a(z0)), p(z1, p(a(z2), z3))) → p(z2, p(a(a(b(z1))), p(a(a(z0)), z3)))
Tuples:

P(a(a(z0)), p(z1, p(a(z2), z3))) → c(P(z2, p(a(a(b(z1))), p(a(a(z0)), z3))), P(a(a(b(z1))), p(a(a(z0)), z3)), P(a(a(z0)), z3))
S tuples:

P(a(a(z0)), p(z1, p(a(z2), z3))) → c(P(z2, p(a(a(b(z1))), p(a(a(z0)), z3))), P(a(a(b(z1))), p(a(a(z0)), z3)), P(a(a(z0)), z3))
K tuples:none
Defined Rule Symbols:

p

Defined Pair Symbols:

P

Compound Symbols:

c

(3) CpxTrsMatchBoundsTAProof (EQUIVALENT transformation)

A linear upper bound on the runtime complexity of the TRS R could be shown with a Match-Bound[TAB_LEFTLINEAR,TAB_NONLEFTLINEAR] (for contructor-based start-terms) of 0.

The compatible tree automaton used to show the Match-Boundedness (for constructor-based start-terms) is represented by:
final states : [1]
transitions:
a0(0) → 0
b0(0) → 0
p0(0, 0) → 1

(4) BOUNDS(O(1), O(n^1))